﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DTO;
using BUS;

namespace CungMuaC5.Account
{
    public partial class Register : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //Member JS Validate
            txt_Email.Attributes.Add("onblur", "ValidateEmail()");
            txt_Password.Attributes.Add("onblur", "ValidatePassword()");
            txt_RetypePassword.Attributes.Add("onblur", "ValidateRePassword()");
            txt_Name.Attributes.Add("onblur", "ValidateName()");
            txt_Phone.Attributes.Add("onblur", "ValidatePhone()");
            txt_Year.Attributes.Add("onblur", "ValidateDOB()");
            combo_LoaiTK.Attributes.Add("onchange", "XacDinhLoaiTK()");

            //Doanh Nghiệp JS Validate
            txt_TenDN.Attributes.Add("onblur", "ValidateTenDN()");
            txt_ChucVu.Attributes.Add("onblur", "ValidateChucVu()");
            txt_Website.Attributes.Add("onblur", "ValidateWebsite()");
            txt_Address.Attributes.Add("onblur", "ValidateDiaChi()");
            txt_ContactInfo.Attributes.Add("onblur", "ValidateContactInfo()");
        }

        protected void btnDangKi_Click(object sender, EventArgs e)
        {
            //Biến Member
            string email = txt_Email.Text.Trim();
            string password = txt_Password.Text.Trim();
            string rePassword = txt_RetypePassword.Text.Trim();
            string name = txt_Name.Text.Trim();
            string phone = txt_Phone.Text.Trim();
            string birthday = txt_Month.Text.Trim() + "/" + txt_Date.Text.Trim() + "/" + txt_Year.Text.Trim();
            string gioitinh; //Giới tính nam: true - nữ: false
            string LoaiTK;
            string TinhTrangTK = "0";
            string currentPageURL = Request.Url.AbsoluteUri;

            //Chừa trống ô
            if (combo_LoaiTK.SelectedValue == "Member")
            {
                try
                {
                    BUS_TaiKhoan taikhoan = new BUS_TaiKhoan();
                    LoaiTK = "0";
                    if (combo_GioiTinh.SelectedValue == "Nam")
                        gioitinh = "False";
                    else
                        gioitinh = "True";

                    //Thêm tài khoản
                    if (taikhoan.KTEmail(email) == true)
                    {
                        if (taikhoan.ThemTaiKhoan(name, email, password, phone, LoaiTK, gioitinh, birthday, "0") == true)
                        {
                            //Về trang đăng kí thành công
                            //string script = "<SCRIPT LANGUAGE='JavaScript'>confirm('Đăng kí tài khoản Member thành công! Bạn có muốn trở về trang chủ?')</SCRIPT>";
                            //System.Web.HttpContext.Current.Response.Write(script);
                            //Response.Redirect("~/Default.aspx");
                            ClientScript.RegisterClientScriptBlock(Page.GetType(), "Message", "alert('Đăng kí tài khoản Member thành công!');window.location='../Default.aspx';", true);
                        }
                    }
                    else
                    {
                        //string script = "<SCRIPT LANGUAGE='JavaScript'>alert('Đã tồn tại tài khoản này')</SCRIPT>";
                        //System.Web.HttpContext.Current.Response.Write(script);
                        ClientScript.RegisterClientScriptBlock(Page.GetType(), "Message", "alert('Đã tồn tại tài khoản này!');window.location='" + currentPageURL + "';", true);
                        return;
                    }
                }
                catch (Exception ex)
                {

                }
            }
            if (combo_LoaiTK.SelectedValue == "DoanhNghiep")
            {
                //Biến Doanh nghiệp
                string dnTaiKhoan;
                string dnChucvu = txt_ChucVu.Text.Trim();
                string dnName = txt_TenDN.Text.Trim();
                string dnWebsite = txt_Website.Text.Trim();
                string dnDiaChi = txt_Address.Text.Trim();
                string dnLoaiHinhKD = combo_LoaiHinhKD.SelectedValue;
                string dnContactInfo = txt_ContactInfo.Text.Trim();
                string dnThanhPho = (combo_Place.SelectedIndex + 1).ToString();

                try
                {
                    LoaiTK = "2";

                    BUS_TaiKhoan taikhoan = new BUS_TaiKhoan();
                    BUS_DoanhNghiep doanhnghiep = new BUS_DoanhNghiep();

                    if (combo_GioiTinh.SelectedValue == "Nam")
                        gioitinh = "False";
                    else
                        gioitinh = "True";

                    //Kiểm tra tài khoản doanh nghiệp đã tồn tại trong 2 bảng tài khoản và doanh nghiệp chưa?
                    if ((taikhoan.KTEmail(email) == true) && (doanhnghiep.KTDoanhNghiep(dnName) == true))
                    {
                        taikhoan.ThemTaiKhoan(name, email, password, phone, LoaiTK, gioitinh, birthday, "0");
                        dnTaiKhoan = (taikhoan.TimMaTK(email)).ToString();
                        try
                        {
                            doanhnghiep.ThemDoanhNghiep(dnTaiKhoan, dnChucvu, dnName, dnWebsite, dnDiaChi, dnLoaiHinhKD, dnThanhPho, dnContactInfo, "0");

                            //Về trang đăng kí thành công
                            DTO_TaiKhoan user = taikhoan.TimKiemTaiKhoan(email, password);
                            Session.SetCurrentUser(user);
                            switch (user.LoaiTK)
                            {
                                case 0:
                                    //Response.Redirect("~/Default.aspx");
                                    ClientScript.RegisterClientScriptBlock(Page.GetType(), "Message", "alert('Đăng kí tài khoản Member thành công!');window.location='../Default.aspx';", true);
                                    break;
                                case 1:
                                    Response.Redirect("~/Account_Admin/QuanLyTinKM/QuanLyTinKM.aspx");
                                    break;
                                case 2:
                                    //Response.Redirect("~/Account_Company/DanhSachDDH.aspx");
                                    ClientScript.RegisterClientScriptBlock(Page.GetType(), "Message", "alert('Đăng kí tài khoản Doanh Nghiệp thành công!');window.location='../Account_Company/DanhSachDDH.aspx';", true);
                                    break;
                            }
                        }
                        catch (Exception ex)
                        {
                            return;
                        }
                        //Về trang đăng kí thành công
                        //DTO_TaiKhoan user = taikhoan.TimKiemTaiKhoan(email, password);
                        //Session.SetCurrentUser(user);
                        //Response.Redirect("~/Account_Company/DanhSachDDH.aspx");
                    }
                    else
                    {
                        //Thêm tài khoản thất bại --> Không thêm doanh nghiệp
                        ClientScript.RegisterClientScriptBlock(Page.GetType(), "Message", "alert('Đã có tài khoản của Doanh Nghiệp này!');window.location='" + currentPageURL + "';", true);
                        return;
                    }
                }
                catch (Exception ex)
                {
                    return;
                }
            }
        }

        protected void btnTroLai_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/Default.aspx");
        }


    }
}